Most distributed computer systems operate in a bit-serial manner. To increase the data throughput, the information may be transmitted in a bit-parallel manner where the data is transmitted in bytes using eight or more parallel transmission lines. However, these buses are complicated and difficult to control in a distributed computer system.
Since the introduction of the content induced transaction overlap (CITO) concept, different variations of the CITO concept have been considered to speed up the transmission process. The CITO concept was initially disclosed by Walter et al in U.S. Pat. No. 4,493,074. The CITO concept has been subsequently expanded by Berkovich et al in U.S. Pat. No. 4,598,411 to on-the-fly data compression, and by Wilson et al in U.S. Pat. No. 4,855,997 to a priority querying technique for a CITO communication system. Berkovich et al, in U.S. Pat. No. 4,868,814, has expanded the CITO concept to multi-level concurrent communications architecture for multiprocessor computer systems and a synchronization technique in U.S. Pat. No. 5,095,481.
The CITO multi-access communication protocol has evolved from the process of bit-overlapping transmission. This process develops bit-by-bit in an established time slot framework. After sending a bit, each transmitter listens to the signal state of the transmission line, commonly referred to as the CITO channel. The signal state of the CITO channel is determined by overlapping its own signal with those of other CITO transmitters. The signal state of the CITO channel is then compared with the signal state of the bit presented for transmission. If the signal state of the bit presented for transmission is different from the signal state of the CITO channel signifying a conflict, the CITO transmitter will suspend further transmissions and wait for another opportunity to resume transmission. The CITO protocol allows the transmissions by the suspended CITO transmitters to be resumed from the point where they were suspended. This is accomplished by a "bit-competition" process in which each suspended transmitter transmits a number corresponding to the number of bits remaining to be transmitted. The CITO transmitters having the least number of bits remaining to be transmitted will then transmit their remaining bits. The data stream on the CITO channel interleaves data bit fragments with bit position data. Each data word arriving through a CITO channel is reconstructed by substituting a received trailing fragment for a corresponding rear portion of the previously received word. The overlapping transmission using CITO protocol is not only an efficient conflict-free communication process but also is a procedure which incorporates properties of associative processing.